package com.beikai.demo01.sort.impl;

import com.beikai.demo01.sort.ArrSort;

/**
 * Created with IntelliJ IDEA.
 *
 * @author : hanbeikai
 * Date: 2021/6/4 7:50 下午
 * Description: 选择排序
 *  使用双重循环,第一层表示当前要比较的数的坐标,
 *  第二层是为了比较当前数之后所有数组中的最大的元素
 */
public class XuanZeSort extends ArrSort {
    @Override
    public int[] sort(int[] arr) {

        for (int i = 0; i < arr.length; i++) {
            // 设置最大值的下标
            int tempIndex = i;
            // 存储当前值
            int tempArr = arr[i];
            for (int j = i + 1; j < arr.length - 1; j++) {
                if (arr[j] > arr[tempIndex]){
                    tempIndex = j;
                }
            }
            if (i != tempIndex){
                swap(arr,tempIndex,i);
            }
        }

        return arr;
    }
}
